/*
 * @Author: 橘子
 * @Date: 2022-09-30 21:54:25
 * @Project_description: 请求工具
 * @Description: 代码是我抄的，不会也是真的
 */
import { Message } from 'element-ui'
import store from '@/store'

/**
 * @description 记录和显示错误
 * @param {Error} error 错误对象
 */
export function errorLog(error) {
  // 添加到日志
  store.dispatch('d2admin/log/push', {
    message: '数据请求异常',
    type: 'danger',
    meta: {
      error,
    },
  })
  // 显示提示
  Message({
    message: error.message,
    type: 'error',
    duration: 5 * 1000,
  })
  // 打印到控制台
  if (process.env.NODE_ENV === 'development') {
    console.log(error.stack)
    throw new Error(error)
  }
}

/**
 * @description 创建一个错误
 * @param {String} msg 错误信息
 */
export function errorCreate(msg) {
  const error = new Error(msg)
  errorLog(error)
  throw error
}
